Phân tích hồi quy tuyến tính

Biên soạn

ThS. Nguyễn Tấn Đức | www.tuhocr.com

Cập nhật

2024 May 22

Source Web

1 Định nghĩa về hồi quy tuyến tính

Hồi quy tuyến tính (simple linear regression model) theo cách hiểu thông thường \(y = ax + b\) hay \(y = b_0 + b_1x\) là mô hình toán học biểu diễn mối quan hệ giữa hai biến định lượng (continuous variable) là \(x\)\(y\).

Trong đó biến \(x\) gọi là biến độc lập (independent), biến tiên lượng (predictor), biến giải thích (explanatory) hay là biến hồi quy (regressor), còn biến \(y\) là biến phụ thuộc (dependent), biến dự báo/dự đoán (predicted), biến phản hồi (response) hay là biến hồi quy phụ thuộc (regressand).

Mô hình hồi quy tuyến tính này, có tên gọi cụ thể là hồi quy tuyến tính đơn biến đa thức bậc 1 khi chỉ sử dụng 1 biến \(x\) (bậc 1, lũy thừa 1) để dự đoán cho biến \(y\). Tên gọi mô hình này là Ordinary least squares (OLS) hay là hồi quy tuyến tính theo phương pháp bình phương tối thiểu theo kiểu bình thường (ordinary) là một loại trong các mô hình hồi quy tuyến tính linear regression1.

Mô hình hồi quy tuyến tính hay gọi là mô hình thống kê (model statistics) về bản chất là công thức toán biểu diễn mối quan hệ giữa các biến (các tham số trong công thức đó) với các miền giá trị của từng tham số. Chi tiết tham khảo ở link này2.

Cần lưu ý là: giữa hai biến \(x\)\(y\) trong ngữ cảnh nói về sự hồi quy (regression) là ta xác định biến nào là biến độc lập, biến nào là biến phụ thuộc, còn trong ngữ cảnh khi nói về sự tương quan (correlation) thì ta chỉ xét về mức độ dao động của cả hai biến xem có cùng tăng hay cùng giảm hay không. Vì vậy phân tích tương quan là cơ sở để ta làm phân tích hồi quy.

2 Đọc kết quả của phương trình hồi quy tuyến tính

Đồ thị bên dưới cho thấy mối quan hệ giữa đường kính thân cây và thể tích thân cây có mối quan hệ tương quan tỷ lệ thuận. Công thức \(y = -36.94 + 5.07 \times x\)\(b_0 = -36.94\) là hệ số chặn (intercept) là giá trị của \(y\) khi \(x = 0\), \(b_1 = 5.07\) là hệ số góc (độ dốc, slope) đại diện cho mức độ tăng (hay giảm) của biến \(y\) khi \(x\) tăng lên 1 đơn vị.

Thông thường ta chỉ có thể dự đoán được biến \(y\) trong khoảng cho trước của biến \(x\) gọi là phương pháp nội suy (interpolate), các giá trị \(y\) được tính theo phương trình gọi là fitted values hay là predicted values của \(y\) (hay là giá trị \(y_{dự~đoán}\)).

Nếu cho biến \(x\) nằm ngoài khoảng giá trị của biến \(x\) ban đầu dùng xây dựng mô hình thì khi ta dự đoán biến \(y\) sẽ không chính xác (vì không đảm bảo ngoài khoảng đó thì mối quan hệ giữa \(x\)\(y\) còn tuyến tính hay không), phương pháp ngoại suy (extrapolate) khi áp dụng cho mô hình hồi quy tuyến tính cần rất thận trọng.

Khoảng chênh lệch giữa \(y_{dự~đoán}\) trừ đi \(y_{thực~nghiệm}\) (actual observed values of \(y\)) gọi là phần dư, residuals hay là sai số errors.

Phương trình đường thẳng \(y = -36.94 + 5.07 \times x\) gọi là line of best fit là một trong rất nhiều đường tuyến tính có thể có để “fit” hay là “đi qua nhiều điểm nhất với ít sai số nhất”, việc ước lượng giá trị \(\beta_0\)\(\beta_1\) để tìm ra giá trị \(b_0\)\(b_1\) với p-value có ý nghĩa thống kê được gọi là quá trình xây dựng mô hình hồi quy tuyến tính.

3 Phân tích hồi quy tuyến tính trong R

3.1 Bước 1: Phân tích dataset

trees -> df

names(df) <- c("duong_kinh", "chieu_cao", "the_tich")

df
   duong_kinh chieu_cao the_tich
1         8.3        70     10.3
2         8.6        65     10.3
3         8.8        63     10.2
4        10.5        72     16.4
5        10.7        81     18.8
6        10.8        83     19.7
7        11.0        66     15.6
8        11.0        75     18.2
9        11.1        80     22.6
10       11.2        75     19.9
11       11.3        79     24.2
12       11.4        76     21.0
13       11.4        76     21.4
14       11.7        69     21.3
15       12.0        75     19.1
16       12.9        74     22.2
17       12.9        85     33.8
18       13.3        86     27.4
19       13.7        71     25.7
20       13.8        64     24.9
21       14.0        78     34.5
22       14.2        80     31.7
23       14.5        74     36.3
24       16.0        72     38.3
25       16.3        77     42.6
26       17.3        81     55.4
27       17.5        82     55.7
28       17.9        80     58.3
29       18.0        80     51.5
30       18.0        80     51.0
31       20.6        87     77.0
dim(df)
[1] 31  3
summary(df)
   duong_kinh      chieu_cao     the_tich    
 Min.   : 8.30   Min.   :63   Min.   :10.20  
 1st Qu.:11.05   1st Qu.:72   1st Qu.:19.40  
 Median :12.90   Median :76   Median :24.20  
 Mean   :13.25   Mean   :76   Mean   :30.17  
 3rd Qu.:15.25   3rd Qu.:80   3rd Qu.:37.30  
 Max.   :20.60   Max.   :87   Max.   :77.00  
str(df)
'data.frame':   31 obs. of  3 variables:
 $ duong_kinh: num  8.3 8.6 8.8 10.5 10.7 10.8 11 11 11.1 11.2 ...
 $ chieu_cao : num  70 65 63 72 81 83 66 75 80 75 ...
 $ the_tich  : num  10.3 10.3 10.2 16.4 18.8 19.7 15.6 18.2 22.6 19.9 ...

3.2 Bước 2: Kiểm tra giả định

Mô hình hồi quy tuyến tính cần được đáp ứng các giả định sau345

4 Tài liệu tham khảo